% 
% @(#)phoney_Buffer.m	1.1  3/16/88
%
import _VectorOfCharObject from "Builtins"
export _BufferObject to "Builtins"
const _BufferObject == immutable object _BufferObject
  export getSignature, create
  const BufferType == type BufferType
    operation write
    operation addChar [Character]
    operation addString [String]
    operation Pad [Character, Integer]
  end BufferType

  function getSignature -> [r : Signature]
    r <- BufferType
  end getSignature

  operation create [myfd : Integer]-> [r : BufferType]
    r <- object aBuffer
      export addChar, addString, write, pad
      monitor
	operation write 

	end write
	operation addChar [c : Character]

	end addChar
	operation addString [s : String]

	end addString
	operation Pad [c : Character, w : Integer]

	end Pad
      end monitor
    end aBuffer
  end create
end _BufferObject
